// 高德地图密钥（可根据项目配置方式调整，如.env文件读取）
export const GAODEKEY = 'bc5d50c926b654c6ae0150436cb94857';

/**
 * 根据IP获取当前城市基础信息（城市名、adcode）
 */
export const getCityByIp = async () => {
  const response = await fetch(`https://restapi.amap.com/v3/ip?key=${GAODEKEY}`);
  return response.json();
};

/**
 * 地理编码：根据城市名称获取经纬度、adcode等详细信息
 * @param cityName 要查询的城市名称
 */
export const getGeocodeByCity = async (cityName: string) => {
  const response = await fetch(
    `https://restapi.amap.com/v3/geocode/geo?address=${cityName}&key=${GAODEKEY}`
  );
  return response.json();
};

/**
 * 获取城市边界GeoJSON数据地址
 * @param adcode 城市的adcode编码
 */
export const getCityBoundaryUrl = (adcode: string) => {
  return `https://geo.datav.aliyun.com/areas_v3/bound/${adcode}.json`;
};